An important ability for an intelligent agent (e.g., a vehicle, a robot) trying to localize in the world, is recognizing its location. Generally, the agent determines its location given only its local sensor information and some model of the world. Typically, its own local sensor information provides some measurement of its location, but this measurement is often imprecise. An intelligent vehicle equipped with a camera can keep track of its position relative to a given starting point in space using visual odometry. However, visual odometry can provide poses that tend to drift. Reliable visual odometry allows the vehicle to estimate its position more precisely.